1. Field of the Invention
The invention relates to the field of copy protection of computer programs, particulaly those stored in read-only memories.
2. Prior Art
Enormous resources are consumed in developing and writing computer programs. For a typical computer, the cost for producing an operating system can equal or exceed the cost of developing the computer itself. Beyond this, the cost of developing applications programs is generally very time-consuming and expensive.
Computer programs, while difficult to originally write, can generally be copied without special equipment. This is particularly true for computer programs stored on floppy disks or on magnetic tapes. In some cases, the programs are encrypted to prevent copying. Encryption, however, is not always desirable since it increases the cost to produce a program and deprives a legitimate user of his lawful right to make back-up copies of the program. And, while some spend considerable effort in encrypting computer programs, others work at breaking the encryption. In the personal computer field, there are those that openly sell programs which break copy-prevention systems, and permit copying of otherwise uncopyable programs. For general discussions of various encryption and cryptographic techniques, see U.S. Pat. Nos. 4,168,396; 4,200,770; 4,218,582; 4,268,911, and 4,278,837.
In recent years, integrated circuit densities have greatly increased, allowing programs to be more easily stored in read-only memories (ROMs). Even programmable read-only memories (PROMs) are available at reasonable cost which will store 128 k bits. It is likely that densities will continue to increase and 256 k bit PROMs, for example, will be available in the not too distant future. ROMs and PROMs have the advantage of storing programs that are immediately available to the user, that is, for instance, the program need not be transferred from a floppy disk to a RAM for execution. Programs in ROMs can generally be executed directly from these memories, and thus the programs themselves do not require RAM space.
The present invention deals with securing programs stored particularly in ROMs, PROMs and EPROMs. It prevents the programs from being read from these memories until certain conditions are met such as a memory being inserted into a particular system. With the present invention the program itself need not be encrypted, although it may be for added security.